/**
 * @param { import("knex").Knex } knex
 * @returns { Promise<void> }
 */
exports.up = function(knex) {
    return knex.schema.createTable('orders', table => {
        table.increments('order_id').primary();
        table.integer('user_id').unsigned().notNullable();
        table.foreign('user_id').references('users.user_id');
        table.decimal('total_amount', 10, 2).notNullable();
        table.string('payment_method').notNullable();
        table.string('order_status').notNullable().defaultTo('pending');
        table.string('transaction_id').nullable();
        table.timestamps(true, true);
    });
};
/**
 * @param { import("knex").Knex } knex
 * @returns { Promise<void> }
 */
exports.down = function(knex) {
    return knex.schema.dropTableIfExists('orders');
};